import { TextFieldProps, TextField, SelectField, SwitchField, Flex, } from '@aws-amplify/ui-react'; import * as React from 'react'; export interface TextFieldPropControlsProps extends TextFieldProps { setVariation: ( value: React.SetStateAction ) => void; setSize: (value: React.SetStateAction) => void; setDescriptiveText: ( value: React.SetStateAction ) => void; setPlaceholder: ( value: React.SetStateAction ) => void; setLabel: (value: React.SetStateAction) => void; setLabelHidden: ( value: React.SetStateAction ) => void; setErrorMessage: ( value: React.SetStateAction ) => void; setHasError: ( value: React.SetStateAction ) => void; setIsDisabled: ( value: React.SetStateAction ) => void; } interface TextFieldPropControlsInterface { (props: TextFieldPropControlsProps): JSX.Element; } export const TextFieldPropControls: TextFieldPropControlsInterface = ({ variation, setVariation, size, setSize, descriptiveText, setDescriptiveText, placeholder, setPlaceholder, label, setLabel, labelHidden, setLabelHidden, errorMessage, setErrorMessage, hasError, setHasError, isDisabled, setIsDisabled, }) => { return ( setVariation(event.target.value as TextFieldProps['variation']) } > setSize(event.target.value as TextFieldProps['size']) } > setDescriptiveText( event.target.value as TextFieldProps['descriptiveText'] ) } /> setPlaceholder(event.target.value as TextFieldProps['placeholder']) } /> setLabel(event.target.value as TextFieldProps['label']) } /> { setLabelHidden(event.target.checked as TextFieldProps['labelHidden']); }} /> setErrorMessage(event.target.value as TextFieldProps['errorMessage']) } /> { setHasError(event.target.checked as TextFieldProps['hasError']); }} /> { setIsDisabled(event.target.checked as TextFieldProps['isDisabled']); }} /> ); };